<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html" version="4.0" encoding="utf-8" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" />
	
	<xsl:key name="comps-by-type" match="Comp" use="@type" />
	<xsl:key name="elts-by-type" match="Elt" use="@type" />
	
	<xsl:template match="/">
		<html>
			<xsl:apply-templates />
		</html>
	</xsl:template>
	
	<xsl:template match="CV">
		<head>
			<title>
				<xsl:value-of select="@idP" />
				
			</title>
				<xsl:element name="link">
					<xsl:attribute name="rel">stylesheet</xsl:attribute>
					<xsl:attribute name="type">text/css</xsl:attribute>
					<xsl:attribute name="href">../styles/design.css</xsl:attribute>
					<xsl:attribute name="media">all</xsl:attribute>
				</xsl:element>
		</head>
		<body>		
			<!-- Ajout balises pour le CSS -->
			<xsl:element name="div"><xsl:attribute name="id">imgG</xsl:attribute>
			<xsl:element name="img"><xsl:attribute name="src">../media/CV-Screen.jpg</xsl:attribute></xsl:element>
			</xsl:element>
			<xsl:element name="div"><xsl:attribute name="id">droite</xsl:attribute>
			<xsl:element name="div"><xsl:attribute name="id">corps</xsl:attribute>

			<!-- FIN balises pour le CSS -->
			<div id="EtatCivil">
				<p>
					<h2>État civil</h2>
					<xsl:apply-templates select="Photo|Nom|Prenom|Sexe|Datenais|Tel|Adresse" />
				</p>
			</div>
			<hr />
			<xsl:apply-templates select="Formations" />
			<hr />
			<xsl:apply-templates select="Experiences" />
			<hr />
			<xsl:apply-templates select="Competences" />
			<hr />
			<xsl:apply-templates select="Langues" />
			<hr />
			<xsl:apply-templates select="Divers" />
			<!-- Ajout balises pour le CSS -->
				</xsl:element>
				<xsl:element name="div"><xsl:attribute name="id">bandeau-bas</xsl:attribute>
					<xsl:element name="p"><xsl:attribute name="class">piedPage1</xsl:attribute>
					<xsl:element name="a"><xsl:attribute name="href">index.html</xsl:attribute><xsl:attribute name="title">Retour a la page d'accueil</xsl:attribute>Accueil</xsl:element><xsl:text> - </xsl:text>
					<xsl:element name="a"><xsl:attribute name="href">Competences.html</xsl:attribute><xsl:attribute name="title">Liste des competences</xsl:attribute>Domaines</xsl:element><xsl:text> - </xsl:text>
					<xsl:element name="a"><xsl:attribute name="href">Personnes.html</xsl:attribute><xsl:attribute name="title">Liste des CV</xsl:attribute>CV</xsl:element>
					</xsl:element>	
				</xsl:element>	
			</xsl:element>	
			<!-- FIN balises pour le CSS -->	
		</body>
	</xsl:template>
	
	<xsl:template match="Photo">
		<img src="{@fichier}" />
	</xsl:template>
	
	<xsl:template match="Nom|Prenom|Sexe|Periode|Titre|Lieu|Profil|Sujet">
		<b><xsl:value-of select="local-name()" /> : </b><xsl:value-of select="." /><br />
	</xsl:template>
	
	<xsl:template match="Sexe">
		<b><xsl:value-of select="local-name()" /> : </b>
		<xsl:choose>
			<xsl:when test="translate(., ' ', '') = 'F'">
				<xsl:text>Femme</xsl:text>
			</xsl:when>
			<xsl:when test="translate(., ' ', '') = 'M' or translate(., ' ', '') = 'H'">
				<xsl:text>Homme</xsl:text>
			</xsl:when>
		</xsl:choose><br />
	</xsl:template>
	
	<xsl:template match="Datenais">
		<b>Date de naissance : </b><xsl:value-of select="." /><br />
	</xsl:template>
	
	<xsl:template match="Tel">
		<b>Tel <xsl:value-of select="@type" /> : </b><xsl:value-of select="." /><br />
	</xsl:template>
	
	<xsl:template match="Adresse">
		<b>Adresse : </b><xsl:apply-templates /><br />
	</xsl:template>
	
	<xsl:template match="Formations">
		<div id="Formations">
			<p>
				<h2>Formations</h2>
				<xsl:apply-templates />
			</p>
		</div>
	</xsl:template>
	
	<xsl:template match="Formation">
		<p>
			<xsl:apply-templates />
		</p>
	</xsl:template>
	
	<xsl:template match="Experiences">
		<div id="Experiences">
			<p>
				<h2>Expériences</h2>
				<xsl:apply-templates />
			</p>
		</div>
	</xsl:template>
	
	<xsl:template match="Experience">
		<p>
			<xsl:apply-templates />
		</p>
	</xsl:template>
	
	<xsl:template match="Competences">
		<div id="Competences">
			<p>
				<h2>Compétences</h2>
				<xsl:for-each select="Comp[count(. | key('comps-by-type', @type)[1]) = 1]">
					<xsl:sort select="@type" />
					<h4><xsl:value-of select="@type" /></h4>
					<xsl:for-each select="key('comps-by-type', @type)">
						<xsl:sort select="." />
						<li>
							<xsl:variable name="compAct"><xsl:value-of select="." /></xsl:variable>
							<xsl:variable name="typeAct"><xsl:value-of select="@type" /></xsl:variable>
							<xsl:element name="a">
								<xsl:attribute name="href">
									<xsl:text>Personnes-</xsl:text>
									<xsl:variable name="smallcase" select="'azertyuiopqsdfghjklmwxcvbn'" />
									<xsl:variable name="uppercase" select="'AZERTYUIOPQSDFGHJKLMWXCVBN'" />
									<xsl:value-of select="document('Competences.xml')/Competences/Competence[translate(Nom, $smallcase, $uppercase)=translate($compAct, $smallcase, $uppercase) and translate(Type, $smallcase, $uppercase)=translate($typeAct, $smallcase, $uppercase)]/@idC" />
									<xsl:text>.html</xsl:text>
								</xsl:attribute>
								<xsl:value-of select="$compAct" />
							</xsl:element>
						</li>
					</xsl:for-each>
				</xsl:for-each>
			</p>
		</div>
	</xsl:template>
	
	<xsl:template match="Langues">
		<div id="Langues">
			<p>
				<h2>Langues</h2>
				<xsl:apply-templates />
			</p>
		</div>
	</xsl:template>
	
	<xsl:template match="Langue">
		<p>
			<b><xsl:value-of select="@type" /></b> : <xsl:value-of select="." />
		</p>
	</xsl:template>
	
	<xsl:template match="Divers">
		<div id="Divers">
			<p>
				<h2>Divers</h2>
				<xsl:for-each select="Elt[count(. | key('elts-by-type', @type)[1]) = 1]">
					<xsl:sort select="@type" />
					<h4><xsl:value-of select="@type" /></h4>
					<xsl:for-each select="key('elts-by-type', @type)">
						<xsl:sort select="." />
						<li><xsl:value-of select="." /></li>
					</xsl:for-each>
				</xsl:for-each>
			</p>
		</div>
	</xsl:template>
	
</xsl:stylesheet>
